fflush() ফাংশনের ব্যবহার

Computer Programming - সি স্ট্যান্ডার্ড লাইব্রেরি রেফারেন্স (C Standard Library Reference) Input/Output Buffering এবং Formatting (ইনপুট/আউটপুট বাফারিং এবং ফরম্যাটিং) |
213
213

fflush() ফাংশনের ব্যবহার

fflush() ফাংশনটি সি প্রোগ্রামিং ভাষায় stdio.h হেডার ফাইলে সংজ্ঞায়িত এবং এটি ফাইল পয়েন্টারের মাধ্যমে বাইন্ড করা আউটপুট স্ট্রিমের বাফারকে ফ্লাশ (empty) করে। যখন কোনো আউটপুট স্ট্রিমে ডেটা লেখা হয়, তখন সেই ডেটা আউটপুট ডিভাইসে বা ফাইলে লেখা না হয়ে বাফারে স্টোর হয়। fflush() ফাংশনটি এই বাফারে থাকা সমস্ত ডেটা ফাইল বা আউটপুট ডিভাইসে পাঠিয়ে দেয়, যা ডেটা নিশ্চিতভাবে আউটপুট ডিভাইসে লেখা নিশ্চিত করে।

fflush() ফাংশনটি প্রধানত আউটপুট স্ট্রিমের জন্য ব্যবহৃত হয় এবং সাধারণত কনসোল বা ফাইল আউটপুট বাফার ফ্লাশ করার জন্য ব্যবহৃত হয়। এটি ইন্টারঅ্যাকটিভ প্রোগ্রামিংয়ে, যেখানে আউটপুট ডেটা শীঘ্রই ব্যবহারকারী বা অন্য প্রোগ্রামের কাছে পৌঁছানোর প্রয়োজন, সেক্ষেত্রে খুবই উপকারী।

সিঙ্কট্যাক্স:

int fflush(FILE *stream);
  • stream: আউটপুট স্ট্রিম পয়েন্টার (যেমন stdout, stderr, অথবা একটি ফাইল পয়েন্টার)।

fflush() ফাংশনের ব্যবহার

  1. stdout (স্ট্যান্ডার্ড আউটপুট) এর জন্য ব্যবহার: যখন আপনি আউটপুট লেখেন, তবে এটি বাফারে জমা হয় এবং ডিভাইসে বা কনসোলে ডেটা না পাঠিয়ে থাকার সম্ভাবনা থাকে। fflush(stdout) ফাংশনটি এই ডেটা ফ্লাশ করে আউটপুট ডিভাইসে পাঠিয়ে দেয়।
  2. ফাইল স্ট্রিমের জন্য ব্যবহার: যখন আপনি কোনো ফাইলে ডেটা লেখেন এবং আপনি চান যে লেখাটি অবিলম্বে ফাইলের মধ্যে সেভ হোক, তখন fflush() ফাংশনটি ফাইল পয়েন্টারের জন্য ব্যবহার করা হয়।
  3. stderr (স্ট্যান্ডার্ড এরর) এর জন্য ব্যবহার: যখন ত্রুটির বার্তা তৈরি করা হয়, তখন আপনি এটি তৎক্ষণাত দেখতে চাইলে fflush(stderr) ব্যবহার করতে পারেন।

উদাহরণ

১. stdout এর জন্য fflush() ব্যবহার

#include <stdio.h>

int main() {
    printf("Hello, ");
    fflush(stdout);  // স্ট্যান্ডার্ড আউটপুট ফ্লাশ করা
    printf("World!\n");
    return 0;
}

এখানে fflush(stdout) ফাংশনটি "Hello, " অংশটিকে কনসোলে পাঠিয়ে দেয়। এটি নিশ্চিত করে যে, প্রথম অংশটি ব্যবহারকারী দেখতে পায়, যদিও পরবর্তী অংশ "World!" লেখার জন্য কিছু সময় নেয়।

২. ফাইলের জন্য fflush() ব্যবহার

#include <stdio.h>

int main() {
    FILE *file = fopen("output.txt", "w");
    if (file == NULL) {
        printf("Unable to open file.\n");
        return 1;
    }

    fprintf(file, "Writing to file...\n");
    fflush(file);  // ফাইলের মধ্যে ডেটা লিখে ফেলবে

    // এখন ফাইল বন্ধ করা
    fclose(file);
    return 0;
}

এখানে, fflush(file) ফাংশনটি "Writing to file..." লেখাটি output.txt ফাইলে লিখে ফেলবে, নিশ্চিত করে যে, ফাইলটি সঠিকভাবে আপডেট হয়।


সারসংক্ষেপ

fflush() ফাংশনটি আউটপুট স্ট্রিম বা ফাইল পয়েন্টারের বাফারকে ফ্লাশ করতে ব্যবহৃত হয়। এটি নিশ্চিত করে যে, বাফারে থাকা সমস্ত ডেটা আউটপুট ডিভাইসে বা ফাইলে পাঠানো হয়, তাৎক্ষণিকভাবে ফলাফল পাওয়ার জন্য এটি প্রয়োজনীয় হতে পারে। এটি প্রাথমিকভাবে আউটপুট স্ট্রিমের জন্য ব্যবহৃত হয়, তবে ফাইল পয়েন্টারেও এটি কার্যকরী।

ফাংশনকাজসিঙ্কট্যাক্স
fflush()আউটপুট স্ট্রিম বা ফাইলের বাফার ফ্লাশ করাint fflush(FILE *stream);

এটি বিশেষভাবে যখন আপনি চান যে, আপনার ডেটা তৎক্ষণাৎ ডিস্ক বা কনসোলে পৌঁছাক, তখন ব্যবহার করা হয়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion